#include <string>
#include <map>
#include <vector>
#include "common.hpp"
using std::string;

void write_geno_table_affy6_to_file(int discard_lines, int discard_cols, int sync_interval, const string& genofile, const string& genotablefile, const vector<int>& idlink_ids, const map<string, int>& annodict);

void write_geno_table_illumina_to_file(int discard_lines, int sync_interval, const string& genofile, const string& genotablefile, const vector<int>& idlink_ids, map<string, map<string, string> > annodict, const string& alleletype);

void write_geno_tables_affy6_to_file(const string& tempdirname, int discard_lines, int shard_sync_interval, const string& genofile, const vector<int>& idlink_ids, const map<string, int>& annodict);

void write_geno_tables_illumina_to_file(const string& tempdirname, int discard_lines, int shard_sync_interval, const string& genofile, const vector<int>& idlink_ids, map<string, map<string, string> > annodict, const string& alleletype);

void truncate_genofile(const string& genofile, const string& truncgenofile, const vector<string>& idlist, const int discard_lines);
